#include <stdio.h>
#include <stdlib.h>
#include "string.h"

void merge_sort(char* m , char* resultado){
	 int len = strlen(m);
    if( len <= 1 ){
        resultado[0] = m[0];
    }else{
		 int middle = (len / 2);
		 char* left;
		 left = (char*) malloc (middle+1);
		 left[0] = '\0';
		 char* right;
		 right = (char*) malloc (middle+1);
		 right[0] = '\0';
		 int x;
		 for(x = 0; x < middle; x++){
		   left[x] = m[x];
		   left[x + 1] = '\0';
		 }
		 int i;
		 int rig = 0;
 		 for( i = middle; i < len; i++ ){
			right[rig] = m[i];
			right[rig + 1] = '\0';
			rig++;
		 } 
		char resultadoLeft[strlen(left)];
		resultadoLeft[0] = '\0';
		merge_sort(left, resultadoLeft);
		free(left);
		char resultadoRight[strlen(right)];
		resultadoRight[0] = '\0';
		merge_sort(right, resultadoRight);
		free(right);
		printf("sarasa \n");
		//merge(resultadoLeft, resultadoRight, resultado);
    }
}

int main (int argc, char **argv){
	char* cadena = "hola\0";
	int longitud = strlen(cadena);
	char resultado[longitud];
	resultado[0] = '\0';
	
	merge_sort(cadena, resultado);
}
